define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) {

    var Controller = {
        index: function () {
            // 初始化表格参数配置
            Table.api.init({
                extend: {
                    index_url: 'task/payment_order/index',
                    add_url: 'task/payment_order/add',
                    edit_url: 'task/payment_order/edit',
                    del_url: 'task/payment_order/del',
                    multi_url: 'task/payment_order/multi',
                    table: 'shop_order',
                    div_evn:{
                        btn_1:{
                            divfunction:function(row){
                                var data = table.bootstrapTable('getSelections');
                                var table_select = JSON.stringify(table.bootstrapTable('getSelections'));
                                layer.confirm('确定催付？',{
                                    btn: ['确定','取消'] //可以无限个按钮
                                    },function(index, layero){
                                        Fast.api.ajax({
                                            url: 'task/payment_order/expedit',
                                            data: {
                                             'row[ids]': row['order_id'],
                                            },
                                            success: function (data) {
                                               layer.msg(data.msg);
                                            },
                                            error: function (data) {
                                               //失败的回调
                                              layer.msg(data.msg);
                                            }
                                        });
                                    },function(index, layero){
                                        layer.msg('已取消操作。');
                                    }
                                );
                            }
                        }
                    },
                }
            });

            var table = $("#table");

            // 初始化表格
            table.bootstrapTable({
                url: $.fn.bootstrapTable.defaults.extend.index_url,
                pk: 'order_id',
                sortName: 'order_id',
                columns: [
                    [
                        {checkbox: true},
                        {field: 'order.order_sno', title: __('Order_sno')},
                        {field: 'order.shop_name', title: __('Shop_name')},
                        {field: 'username', title: __('Username')},
                        {field: 'order.tao_bao_no', title: __('Tao_bao_no')},
                        {field: 'bank_name', title: __('Bank_name')},
                        {field: 'nbank_account', title: __('Shop_bank_no')},
                        {field: 'bank_no', title: __('银行号码')},
                        {field: 'order.real_money', title: __('Order_amount')},
                        {field: 'on_time', title: __('On_time'), operate:'RANGE', addclass:'datetimerange', formatter: Table.api.formatter.datetime},
                        {field: 'order.create_time', title: __('接单时间'), operate:'RANGE', addclass:'datetimerange', formatter: Table.api.formatter.datetime},
                        {
                            field: 'order.status',
                            title: __('Status'),
                            searchList:
                                     {
                                         "0":__('已拍下'),
                                         "1":__('未审核'),
                                         "2":__('已审核'),
                                         "3":__('已上传'),
                                         "4":__('已复查'),
                                         "5":__('已付款'),
                                         "6":__('已下单'),
                                         "7":__('待发货'),
                                         "8":__('待好评'),
                                         "9":__('已发货'),
                                         "10":__('已好评'),
                                         "11":__('待追评'),
                                         "12":__('已追评'),
                                         "13":__('已完成'),
                                     },
                            formatter:function(value,row,index){
                                var keys = typeof this.searchList === 'object' ? Object.keys(this.searchList) : [];
                                if(value=="" || value==null){
                                    value = value;
                                }else{
                                    value = value.toString();
                                }
                                var index = keys.indexOf(value);
                                value = value === null ? '' : value.toString();
                                var display = index > -1 ? this.searchList[value] : null;
                                var icon = typeof this.icon !== 'undefined' ? this.icon : null;
                                if (!display) {
                                    display = __(value.charAt(0).toUpperCase() + value.slice(1));
                                }
                                var html = '<span class="text">' + (icon ? '<i class="' + icon + '"></i> ' : '') + display + '</span>';
                                if (this.operate != false) {
                                    html = '<a href="javascript:;" class="searchit" data-toggle="tooltip" title="' + __('Click to search %s', display) + '" data-field="' + this.field + '" data-value="' + value + '">' + html + '</a>';
                                }
                                return html;
                            }
                        },
                        {field: 'operate', title: __('Operate'), table: table,
                            events: Table.api.events.operate, formatter: Table.api.formatter.operate,formatter: function (value, row, index) {
                                var table = this.table;
                                // 操作配置
                                var options = table ? table.bootstrapTable('getOptions') : {};
                                // 默认按钮组
                                var buttons = $.extend([], this.buttons || []);
                                if(row.order) {
                                    if (row.order.status == 5) {
                                        buttons.push(
                                            {
                                                name: 'btn_1',
                                                text: "催付",
                                                extend: 'data-toggle="tooltip" data-name="btn_1" data-title="催付" ',
                                                classname: 'btn btn-xs btn-success btn-magic btn-div',
                                            });
                                    }
                                }
                                $(table).data("operate-edit", null);
                                $(table).data("operate-del", null);
                                return Table.api.buttonlink(this, buttons, value, row, index, 'operate');
                            }
                        }
                    ]
                ]
            });

            $(document).on("click", "#exit", function (e){
                var data = table.bootstrapTable('getSelections');
                var table_select = JSON.stringify(table.bootstrapTable('getSelections'));
                layer.confirm('确定催付？',{
                    btn: ['确定','取消'] //可以无限个按钮
                    },function(index, layero){
                        Fast.api.ajax({
                            url: 'task/payment_order/expedit',
                            data: {
                                'ids': data,
                            },
                            success: function (data) {
                               layer.msg(data.msg);
                            },
                            error: function (data) {
                               //失败的回调
                              layer.msg(data.msg);
                            }
                        });
                    },function(index, layero){
                        layer.msg('已取消操作。');
                    }
                );
            });



            // 为表格绑定事件
            Table.api.bindevent(table);
        },
        add: function () {
            Controller.api.bindevent();
        },
        edit: function () {
            Controller.api.bindevent();
        },
        api: {
            bindevent: function () {
                Form.api.bindevent($("form[role=form]"));
            }
        }
    };
    return Controller;
});